/**
 * @addtogroup bsc_gnss_module_ublox
 * bsc_gnss_module_ublox
 * @{
 */
/**
 * @file         bsc_gnss_module_ublox.h
 * @brief        
 * @note    
 * @author       tj(jie.tan@hopechart.com, 谈杰)
 *
 * @par          修改日志
 * <table>
 * <tr><th>Date        <th>Version               <th>Author                                    <th>Description
 * <tr><td>2024-01-04  <td>1.0                   <td>tj(jie.tan@hopechart.com, 谈杰)            <td>创建初始版本
 * @copyright    杭州鸿泉物联网技术股份有限公司
 */
#ifndef _BSC_GNSS_MODULE_UBLOX_H_
#define _BSC_GNSS_MODULE_UBLOX_H_

#ifdef __cplusplus
extern "C" {
#endif

#include "bsc_gnss_module_interface.h"

/**
 * 
 */
typedef struct TBsGnssModuleUbloxTag TBsGnssModuleUblox;
struct TBsGnssModuleUbloxTag
{
    IBsGnssModule gnss_module_;
};

/**
 * 构造函数
 * @param self: 对象指针
 * @return 
 */
void TBsGnssModuleUbloxCreate(TBsGnssModuleUblox *self);

/**
 * 析构函数
 * @param self: 对象指针
 * @return 
 */
void TBsGnssModuleUbloxDestroy(TBsGnssModuleUblox *self);

/**
 * 获取接口指针
 * @param self: 对象指针
 * @return 接口指针
 */
IBsGnssModule *TBsGnssModuleUbloxInterface(TBsGnssModuleUblox *self);

/**
 * 设置Ublox模块输出频率
 * @param self: 对象指针
 * @param server_funcs: gnss服务函数集
 * @param freq: 频率，单位:Hz   <=50Hz
 * @return >= 0 成功
 *          < 0 错误码
 */
Int32 TBsGnssModuleUbloxSetModuleOutFreq(TBsGnssModuleUblox *self, IBsGnssServerFuncs *server_funcs, UInt32 freq);

#ifdef __cplusplus
} // extern "C" {
#endif

#endif

/**
 * @} 
 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 


